iT邦幫忙

0

Day 18:身份驗證漏洞:弱密碼爆破(Hydra)與 Session 劫持

  • 分享至 

  • xImage
  •  

💡 什麼是身份驗證漏洞?
在前面的文章中,我們探討了許多應用程式邏輯與注入漏洞。今天我們要聚焦在資安防線的最前端——身份驗證(Authentication)。

身份驗證的核心目的是確認「使用者到底是誰」。然而,許多系統在設計登入機制、密碼保護或會話管理時,常因思慮不周而導致身份驗證漏洞。一旦被攻擊者突破,輕則帳號遭到盜用,重則導致整個系統的管理權限落入他人手中。今天我們將透過密碼爆破與Session 劫持兩個經典主題來深入剖析。

🛠️ 弱密碼與自動化爆破工具:Hydra 實戰
許多使用者為了方便記憶,習慣使用如 123456、password 或生日等弱密碼。如果網站沒有對登入失敗次數進行限制(Rate Limiting)或導入圖形驗證碼(CAPTCHA),攻擊者就能利用自動化工具進行大規模的暴力破解或字典攻擊。

Hydra(THC Hydra) 是滲透測試中最強大且最常用的多協定登入爆破工具。它可以針對 SSH、FTP、HTTP Form、Telnet 等多種服務進行快速的密碼猜解。

📌 Hydra HTTP 登入表單爆破範例:
Bash
hydra -l admin -P passwords.txt 192.168.1.100 http-post-form "/login.php:user=^USER&pass=^PASS&Login=Submit:F=Login failed"
-l admin:指定要攻擊的固定使用者帳號(若有多個帳號可改用 -L users.txt)。

-P passwords.txt:載入常見的弱密碼字典檔。

http-post-form:指定攻擊 HTTP POST 表單的模式,後面帶入參數格式與失敗的特徵字串(F=Login failed)。

🔓 Session 劫持(Session Hijacking)原理
當使用者成功登入後,伺服器通常會發放一串 Session ID(存放在 Cookie 中)來識別使用者的身份,之後的每一次請求就不需重新輸入密碼。

然而,如果 Session 管理機制不夠安全,就會面臨以下威脅:

Session 預先固定(Session Fixation): 攻擊者先誘騙受害者使用一個由攻擊者指定的 Session ID 進行登入,藉此直接掌控該會話。

Session 竊取: 若網站未強制啟用 Secure 與 HttpOnly 旗標,攻擊者就能透過 XSS 漏洞或網路監聽(Sniffing)直接奪取使用者的 Session Cookie,進而進行 Session 劫持,直接偽裝成受害者在系統中為所欲為。


*提醒邦友,使用第三方服務/API 時,請務必評估資安風險與隱私保護
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言